package cartagows.wsframework.wssecurity.policy.model;

import org.apache.neethi.Assertion;
import org.apache.neethi.PolicyComponent;

import cartagows.wsframework.wssecurity.policy.SP12Constants;
import cartagows.wsframework.wssecurity.policy.SPConstants;

public abstract class AbstractSecurityAssertion implements Assertion {

    private boolean isOptional;  
    private boolean normalized = false;   
    protected int version;

    public boolean isOptional() {
        return isOptional;
    }
    
    public void setOptional(boolean isOptional) {
        this.isOptional = isOptional;
    }

    public short getType() {
        return org.apache.neethi.Constants.TYPE_ASSERTION;
    }    
    
    public boolean equal(PolicyComponent policyComponent) {
        throw new UnsupportedOperationException();
    }
    
    public void setNormalized(boolean normalized) {
        this.normalized = normalized;
    }
    
    public boolean isNormalized() {
        return true;
    }

    public PolicyComponent normalize() {
    
        return this;
    }  
    
    public void setVersion(int version) {
        this.version = version;
    }
    
    public int getVersion() {
        return version;
    }
    
    
}
